package com.orangelife.webservice.service.base;

import java.util.Map;

import javax.jws.WebParam;
import javax.jws.WebService;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.Response;

import org.apache.cxf.interceptor.InInterceptors;
import org.apache.cxf.interceptor.OutInterceptors;

/*****************************************************************
 * Copyright(C) ORANGELIFE Corporation 2015. All Rights Reserved.
 *****************************************************************/
/*
 * ============================================================== 功能名
 * propFeeDic类 的WebService基本作业
 * 
 * @author @author zhr
 * 
 * @version 1.1.0
 * 
 * @date 2016-07-04 11:04:40
 * ==============================================================
 */
@WebService
@InInterceptors(interceptors = "org.apache.cxf.interceptor.LoggingInInterceptor")
@OutInterceptors(interceptors = "org.apache.cxf.interceptor.LoggingOutInterceptor")
public interface IBaseWebService {

	/***
	 * 同步预存款信息到财务中心
	 * 
	 * @param servletRequest
	 * @param map
	 * @return
	 * @throws Exception
	 */
	@POST
	@Path("/synchPreBillData")
	@Produces({ "application/json" })
	public Response synchPreBillData(
			@Context HttpServletRequest servletRequest,

			@WebParam Map<String, Object> parMap) throws Exception;

	/***
	 * 同步其他费用信息到财务中心
	 * 
	 * @param servletRequest
	 * @param map
	 * @return
	 * @throws Exception
	 */
	@POST
	@Path("/synchDirBillData")
	@Produces({ "application/json" })
	public Response synchDirBillData(
			@Context HttpServletRequest servletRequest,
			@WebParam Map<String, Object> parMap) throws Exception;

	/***
	 * 同步预存款冲抵信息信息到财务中心
	 * 
	 * @param servletRequest
	 * @param map
	 * @return
	 * @throws Exception
	 */
	@POST
	@Path("/synchpreBillOffData")
	@Produces({ "application/json" })
	public Response synchpreBillOffData(
			@Context HttpServletRequest servletRequest,
			@WebParam Map<String, Object> parMap) throws Exception;

	/***
	 * 同步其他费用信息冲抵到财务中心
	 * 
	 * @param servletRequest
	 * @param map
	 * @return
	 * @throws Exception
	 */
	@POST
	@Path("/synchDirBillOffData")
	@Produces({ "application/json" })
	public Response synchDirBillOffData(
			@Context HttpServletRequest servletRequest,
			@WebParam Map<String, Object> parMap) throws Exception;

	/****
	 * 同步减免信息到财务信息
	 * 
	 * @param servletRequest
	 * @param parMap
	 * @return
	 * @throws Exception
	 */
	@POST
	@Path("/synchpReductionData")
	@Produces({ "application/json" })
	public Response synchpReductionData(
			@Context HttpServletRequest servletRequest,
			@WebParam Map<String, Object> parMap) throws Exception;

}
